package cn.zn.modules.appoin.service;

import cn.zn.modules.appoin.entity.AppoinTimeMain;
import cn.zn.modules.appoin.entity.AppointTimeWork;
import cn.zn.modules.appoin.entity.vo.AppointTimeWorkVO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.Calendar;
import java.util.List;

public interface AppointTimeWorkService extends IService<AppointTimeWork> {

    /**
     * 某天的工作时间
     *
     * @param mainId
     * @return
     */
    List<AppointTimeWorkVO> listByMain(String mainId);

    /**
     * 查询空闲时间
     *
     * @param date     工作日期
     * @param userCode 工作人员编号
     * @param time     选定时间
     * @return
     */
    Integer queryFreeTime(String date, String userCode, String time);

    /**
     * 选择的时间是否在工作范围内，并返回选择的时间、所在工作时间段的结束时间
     *
     * @param appoinTimeMain
     * @param time
     * @return
     */
    Calendar[] isAtWork(AppoinTimeMain appoinTimeMain, String time);
}
